←Select platform

ExtractFramesMemory(Stream,List<int>) Method

Summary
Extracts the specified frames from the input stream, and saves them to a new JPEG 2000 file in a byte array. This method is available in the Document/Medical Toolkits.

Syntax
C#
C++/CLI
Python
public byte[] ExtractFramesMemory( 
   Stream stream, 
   List<int> frames 
) 
public: 
array<byte>^ ExtractFramesMemory(  
   Stream^ stream, 
   List<int>^ frames 
)  
def ExtractFramesMemory(self,stream,frames): 

Parameters

stream
A System.IO.Stream containing the JPEG 2000 file data from which the frames are being extracted.

frames
Frame indices. A list of integers specifying the indices of the frames to be extracted from the input file. All indices should be 0-based.

Return Value

A byte array that contains a JPEG 2000 file with extracted frames only.

Remarks

. This file contains only the extracted frame headers/code streams (not any obtained through the decompressing/recompressing process) so it saves processor time and memory.

This method is very suitable for server applications where multiple clients request specific frames of a JPEG 2000 file. Instead of decompressing and then recompressing the frames this method copies only the needed frame data, saving the data to a new JPEG 2000 file.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Jpeg2000; 
 
 
public byte[] ExtractFramesMemoryStreamExample(List<int> frames) 
{ 
   FileStream fs = File.OpenRead(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx")); 
 
   Jpeg2000Engine engine = new Jpeg2000Engine(); 
   Jpeg2000FileInformation fileInfo = engine.GetFileInformation(fs); 
 
   for (int i = 0; i < frames.Count; i++) 
      if (frames[i] >= fileInfo.Frame.GetLength(0)) 
         return null; 
   byte[] buffer = engine.ExtractFramesMemory(fs, frames); 
   // Clean up 
   fs.Close(); 
   return buffer; 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Jpeg2000 Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.